package com.znf4.banklink.vo;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 通道预支付请求参数
 */

public class CnpPayPreParam implements Serializable {
	private static final long serialVersionUID = -3692177355278901753L;

	/** 支付接口（非空） */
	private String bankChannelCode;

	/** 银行订单号 */
	private String bankOrderNo;

	/** 平台支付流水号 */
	private String paymentTrxNo;

	/** 支付金额 */
	private BigDecimal payAmount;

	/** 币种 */
	private Integer currency;

	/** 商品名称 */
	private String productName;

	/** 下单日期 */
	private Date orderDate;

	/** 客户IP */
	private String payerIp;

	/** 商户编号 */
	private String merchantNo;

	/** 商户名称 */
	private String merchantName;

	/** 商户收款银行卡卡号 **/
	private String merchantAccountNo;

	/** 商户收款银行卡账户名 **/
	private String merchantAccountName;
	
	/** 商户收款银行卡 手机号 **/
	private String merchantAccountPhone;

	/** 身份证号码 **/
	private String idCardNo;

	/** 商户收款银行编号 **/
	private String bankCode;

	/** 银行名称 **/
	private String bankName;

	/** 清算行行号 **/
	private String clearBankCode;

	/** 商户支付费率 (提供给支付代付一起调用的接口) **/
	private BigDecimal merchantPayRate;

	/** 商户手续费 **/
	private BigDecimal merchantFee;

	/** 微信公众号appId **/
	private String appId;

	/** 微信公众号个人openid **/
	private String openId;

	/**
	 * 商户同步返回页面地址
	 */

	private String merchantReturnUrl;

	/**
	 * 商户银行通道附属信息
	 */
	private String bankDesc;

	/** 银行分配子商户号 **/
	private String subMerchantNo;

	/** 银行分配子商户paykey **/
	private String subMerchantPayKey;

	/** 支付记录id **/
	private Long  paymentRecordId;

	public BigDecimal getMerchantFee() {
		return merchantFee;
	}

	public void setMerchantFee(BigDecimal merchantFee) {
		this.merchantFee = merchantFee;
	}

	public String getAppId() {
		return appId;
	}

	public void setAppId(String appId) {
		this.appId = appId;
	}

	public String getOpenId() {
		return openId;
	}

	public void setOpenId(String openId) {
		this.openId = openId;
	}

	public String getBankChannelCode() {
		return bankChannelCode;
	}

	public void setBankChannelCode(String bankChannelCode) {
		this.bankChannelCode = bankChannelCode;
	}

	public String getBankOrderNo() {
		return bankOrderNo;
	}

	public void setBankOrderNo(String bankOrderNo) {
		this.bankOrderNo = bankOrderNo;
	}

	public String getPaymentTrxNo() {
		return paymentTrxNo;
	}

	public void setPaymentTrxNo(String paymentTrxNo) {
		this.paymentTrxNo = paymentTrxNo;
	}

	public BigDecimal getPayAmount() {
		return payAmount;
	}

	public void setPayAmount(BigDecimal payAmount) {
		this.payAmount = payAmount;
	}

	public Integer getCurrency() {
		return currency;
	}

	public void setCurrency(Integer currency) {
		this.currency = currency;
	}

	public String getProductName() {
		return productName;
	}

	public void setProductName(String productName) {
		this.productName = productName;
	}

	public Date getOrderDate() {
		return orderDate;
	}

	public void setOrderDate(Date orderDate) {
		this.orderDate = orderDate;
	}

	public String getPayerIp() {
		return payerIp;
	}

	public void setPayerIp(String payerIp) {
		this.payerIp = payerIp;
	}

	public String getMerchantNo() {
		return merchantNo;
	}

	public void setMerchantNo(String merchantNo) {
		this.merchantNo = merchantNo;
	}

	public String getMerchantName() {
		return merchantName;
	}

	public void setMerchantName(String merchantName) {
		this.merchantName = merchantName;
	}

	public String getMerchantAccountNo() {
		return merchantAccountNo;
	}

	public void setMerchantAccountNo(String merchantAccountNo) {
		this.merchantAccountNo = merchantAccountNo;
	}

	public String getMerchantAccountName() {
		return merchantAccountName;
	}

	public void setMerchantAccountName(String merchantAccountName) {
		this.merchantAccountName = merchantAccountName;
	}

	public String getBankCode() {
		return bankCode;
	}

	public void setBankCode(String bankCode) {
		this.bankCode = bankCode;
	}

	public String getBankName() {
		return bankName;
	}

	public void setBankName(String bankName) {
		this.bankName = bankName;
	}

	public String getClearBankCode() {
		return clearBankCode;
	}

	public void setClearBankCode(String clearBankCode) {
		this.clearBankCode = clearBankCode;
	}

	public String getBankDesc() {
		return bankDesc;
	}

	public void setBankDesc(String bankDesc) {
		this.bankDesc = bankDesc;
	}

	public String getMerchantReturnUrl() {
		return merchantReturnUrl;
	}

	public void setMerchantReturnUrl(String merchantReturnUrl) {
		this.merchantReturnUrl = merchantReturnUrl;
	}

	public BigDecimal getMerchantPayRate() {
		return merchantPayRate;
	}

	public void setMerchantPayRate(BigDecimal merchantPayRate) {
		this.merchantPayRate = merchantPayRate;
	}

	public String getIdCardNo() {
		return idCardNo;
	}

	public void setIdCardNo(String idCardNo) {
		this.idCardNo = idCardNo;
	}

	public String getSubMerchantNo() {
		return subMerchantNo;
	}

	public void setSubMerchantNo(String subMerchantNo) {
		this.subMerchantNo = subMerchantNo;
	}

	public String getSubMerchantPayKey() {
		return subMerchantPayKey;
	}

	public void setSubMerchantPayKey(String subMerchantPayKey) {
		this.subMerchantPayKey = subMerchantPayKey;
	}

	public Long getPaymentRecordId() {
		return paymentRecordId;
	}

	public void setPaymentRecordId(Long paymentRecordId) {
		this.paymentRecordId = paymentRecordId;
	}

	public String getMerchantAccountPhone() {
		return merchantAccountPhone;
	}

	public void setMerchantAccountPhone(String merchantAccountPhone) {
		this.merchantAccountPhone = merchantAccountPhone;
	}

	public static long getSerialversionuid() {
		return serialVersionUID;
	}

	@Override
	public String toString() {
		return "CnpPayPreParam [bankChannelCode=" + bankChannelCode + ", bankOrderNo=" + bankOrderNo + ", paymentTrxNo="
				+ paymentTrxNo + ", payAmount=" + payAmount + ", currency=" + currency + ", productName=" + productName
				+ ", orderDate=" + orderDate + ", payerIp=" + payerIp + ", merchantNo=" + merchantNo + ", merchantName="
				+ merchantName + ", merchantAccountNo=" + merchantAccountNo + ", merchantAccountName="
				+ merchantAccountName + ", merchantAccountPhone=" + merchantAccountPhone + ", idCardNo=" + idCardNo
				+ ", bankCode=" + bankCode + ", bankName=" + bankName + ", clearBankCode=" + clearBankCode
				+ ", merchantPayRate=" + merchantPayRate + ", merchantFee=" + merchantFee + ", appId=" + appId
				+ ", openId=" + openId + ", merchantReturnUrl=" + merchantReturnUrl + ", bankDesc=" + bankDesc
				+ ", subMerchantNo=" + subMerchantNo + ", subMerchantPayKey=" + subMerchantPayKey + ", paymentRecordId="
				+ paymentRecordId + "]";
	}

	
	
	
	
	
	
	
	
	
	
	
}
